 /**
 * @file 温度控制
 * @author 
 * @date 
 * @brief 
 */

#ifndef WEATHER_CTRL_H_
#define WEATHER_CTRL_H_
#include "stdint.h"

#define     WEATHER_RECORD_NUMBER   (5) //天气保存记录

typedef enum
{
    WEATHER_TEMPERATURE_TYPE_F,//华氏度
    WEATHER_TEMPERATURE_TYPE_C,//摄氏度
}weather_temperature_type_t;
typedef enum
{
    WEATHER_TYPE_UNKNOW,    //未知天气
    WEATHER_TYPE_SUNSHINE,  //晴天
    WEATHER_TYPE_CLOUDY,//多云
    WEATHER_TYPE_RAINY, //雨天    
    WEATHER_TYPE_SNOW,//雪
    WEATHER_TYPE_HAZE,//雾霾
    WEATHER_TYPE_THUNDER,//雷电
    WEATHER_TYPE_PARTLY_CLOUDY,//局部多云
    WEATHER_TYPE_END,
}weather_type_t;

typedef struct
{
    uint16_t       date_index;
    uint8_t         type;    
    uint8_t         umbrella_need;
    uint8_t         humidity;
    int8_t           temperature_min;
    int8_t           temperature_max;
    uint8_t         rec;
}weather_record_t;


void weather_ctrl_init(void);

void weather_ctrl_get(uint8_t days_offset, weather_record_t *p_weather);
uint8_t weather_get_temperature_type(void);
uint8_t weather_is_enable(void);
uint8_t weather_show_if_need(uint8_t days_offset);

void weather_ctrl_set_config(uint8_t enable, uint8_t temperature_type);
void weather_data_update(uint8_t  index,weather_record_t *p_data);
void weather_ctrl_factory_default(void);
#endif
